Systems and methods for slot classification

ABSTRACT

Systems and methods for inventory round slot classification are described. The method includes transmitting, to zero or more RFID tags, a message during a slot of an inventory round and receiving a response from at least some of the zero or more RFID tags. The method also includes analyzing a received response for the presence of the pilot tone and classifying a respective slot in response to the analysis.

FIELD OF THE INVENTION

This application relates generally to a radio frequency identification(RFID) tag reader. More specifically, the application relates to aclassifying the outcome of one or more slots in an inventory round.

BACKGROUND OF THE INVENTION

The Gen2 RFID protocol utilizes a Q round methodology to inventory apopulation of tags. An interrogator chooses a value of Q and sends thisnumber in a query command to a population of tags. Each tag in thepopulation then picks a random number between 0 and 2^(Q)−1. This numberrepresents the slot of the round in which the tag backscatters itsmessage (RN16) value to the interrogator.

With reference to FIG. 1A, the interrogator chose a Q value of three,thus creating eight possible slots 100A, 100B, 100C, 100D, 100E, 100F,100G, 100H (referred to generally as slot 100). Fourteen tags wereavailable during this inventory round. Slot zero 100A and slot three100D are each chosen by only one tag and are therefore referred to as“singly occupied slots”. These slots 100 are decoded correctly. None ofthe tags chose slot 100B, and that slot is therefore referred to as“empty”. Two or more tags occupy the remaining slots 100C, 100E, 100F,100G, 100H causing “collisions” in their respective tag responses. Theinventory round depicted in FIG. 1A typically results in successfuldecoding of two tags. In response, the interrogator increases the valueof Q in the next round reducing the number of collisions occurringrendering more tags readable.

With reference to FIG. 1B, the interrogator uses the same Q value ofthree but with a population of four tags instead of fourteen. Sensingthe large number of “empty” slots the interrogator should reduce thevalue of Q in the subsequent inventory round, to reduce the time takento inventory the tags correctly.

FIG. 2, shows a typical Gen2 query method 200 for determining whether aslot 100 is singly occupied, empty, or a collision. The method includesperforming (step 210) a query and checking (step 220) for the RN16start-of-frame pattern. If the RN16 start-of-frame pattern is notdetected, the slot 100 is classified (step 230) as empty. When the RN16start-of-frame pattern is detected, the interrogator transmits (step240) an ACK message. After sending the ACK message, the reader checks(step 250) for the EPC start-of-frame pattern. If the EPC start-of-framepattern is not detected, the slot 100 is classified (step 260) ascollided. When the EPC start-of-frame pattern is detected, the EPCcyclic redundancy check (CRC) is checked (step 270) for correctness. Ifthe CRC is incorrect, the slot 100 is classified (step 280) as collided.The slot 100 is classified (step 290) as singly occupied when the CRC iscorrect.

As shown, the ability to successfully decode the start-of-frame patternis critical in classifying the outcome of the slot 100. Thisstart-of-frame pattern can be seen by the phase reversals following thepilot tone as per the Miller or FM0 coding scheme basis functions. Basisfunctions for the Miller coding scheme are defined in EPC GlobalSpecifications. Miller coding inserts phase reversal in the middle for a‘1’ bit and a phase reversal for a ‘0’ bit depending on the next bit.Phase reversals can be detected from sign changes in the output of amatched filter. This detection algorithm can tolerate the link frequencyvariation of up to 50% (most of the standards limit the link frequencyvariation to <15%). Interrogator estimates the link frequency from thepilot tone with in the first three cycles and continues to track itduring the response. This way a matched filter can reliably detect anyphase reversals after three cycles.

Noise sources, collisions, interference and bit errors however can causeproblems in accurately deciphering the start-of-frame pattern. This maylead to incorrect classification of the outcomes of a slot 100. Inaddition, bit errors may cause the CRC check to fail. In that case asingly occupied slot 100 may be misinterpreted as a collision.

As can be seen from the above examples, it is important that theinterrogator accurately identify the number of empty, single occupiedslots, and collisions to adjust the value of Q for the next inventoryround. By adjusting the Q value the number of tags read correctly isincreased and the time required to read those tags is reduced.

SUMMARY OF THE INVENTION

In one aspect, a modified search algorithm that reduces the likelihoodthat interference sources and noise can confuse the RFID interrogator isshown and described. This algorithm keeps read rates high with respectto the unmodified search algorithm.

In another aspect, another algorithm can be used to calculate aparameter for use in an inventory round. In some embodiments, thealgorithm utilizes the categorization information to adapt quickly andmake a quick determination of the parameters for the next inventoryround.

In one aspect, the invention features a method of classifying a slot ofan inventory round. Each slot of the inventory round corresponds to atime period for response by zero or more of RFID tags. The methodincludes transmitting, to one or more RFID tags, a message during a slotof an inventory round and receiving a response from at least some of theone or more RFID tags. The response includes a pilot tone. The methodalso includes analyzing the received responses for the presence of thepilot tone and classifying a respective slot in response to theanalysis.

In one embodiment, the method includes detecting a phase reversal in thereceived signal and classifying the respective slot as empty in responseto a detected phase reversal within a specified time period. In oneembodiment, the phase reversal is detected within the modulation coding.In another embodiment, the phase detection occurs within the basebandphysical layer (e.g., the in-phase “I” or quadrature “Q” signals). Themethod can also include detecting a phase reversal in the receivedsignal and classifying the respective slot as either collided or singlyoccupied in response to not detecting a phase reversal within aspecified time period.

In further embodiments, the method can include processing the receivedsignal when the slot is classified as either collided or singlyoccupied. The processing can include performing pattern matching on thereceived signal. Further, the method can include classifying therespective slot, as having a collision when the processing indicatesthat there are is not a pattern match. In addition, the method caninclude transmitting an acknowledgment message when the processingindicates that there is a pattern match, receiving a response to theacknowledgment message, and analyzing the received response to theacknowledgment message.

In some embodiments, the method includes analyzing the received responseto the acknowledgment message by performing pattern matching on thereceived response to the acknowledgment message and classifying the slotas having a collision when the pattern matching indicates that there areis not a pattern match. Also, the method can include further processingthe received response to the acknowledgment message when the patternmatching indicates that there is a pattern match.

In some embodiments, the further processing includes decoding at least aportion of the response to the acknowledgment message and classifyingthe respective slot as having a collision when the decoding indicatesthat the decoded portion of the response the acknowledgment message doesnot match an expected result. In a further embodiment, the methodincludes classifying the respective slot as having a collision when thedecoding indicates that a length specified by a decoded response lengthindicator does not match the length of the decoded message.

In other embodiments, the method includes classifying the respectiveslot as singly occupied when the decoding indicates that the decodedportion of the response the acknowledgment message matches an expectedresult. In a further embodiment, the method includes classifyingcomprises classifying the respective slot as singly occupied when thedecoding indicates that a length specified by a decoded response lengthindicator matches the length of the decoded message.

In another aspect, the invention features a system for classifying aslot of an inventory round. The system includes a transmitter, areceiver, and processing unit. The transmitter transmits, to zero ormore RFID tags, a message during a slot of an inventory round. Thereceiver receives a response from at least one of one or more RFID tags.The response includes a pilot tone. The processing unit communicateswith the receiver, analyzes the received responses for the presence of apilot tone, and classifies a respective slot in response to theanalysis.

In yet another aspect, the invention features a system for classifying aslot of an inventory round. The system includes means for transmitting,means for receiving and means for processing. The means for transmittingtransmits, to zero or more RFID tags, a message during a slot of aninventory round. The means for receiving receives a response from atleast one of one or more RFID tags. The response includes a pilot tone.The means for processing communicates with the means for receiving,analyzes the received responses for the presence of a pilot tone, andclassifies a respective slot in response to the analysis.

Further features and advantages of the present invention will beapparent from the following description of preferred embodiments andfrom the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The following figures depict certain illustrative embodiments of theinvention in which like reference numerals refer to like elements. Thesedepicted embodiments are to be understood as illustrative of theinvention and not as limiting in any way.

FIG. 1A depicts an embodiment of a block diagram representation of anumber of slots for categorization by an RFID tag reader system;

FIG. 1B depicts another embodiment of a block diagram representation ofa number of slots for categorization by an RFID tag reader system;

FIG. 2 is depicts a flow chart of an embodiment of a method ofclassifying slots according the Gen2 RFID protocol;

FIG. 3 depicts a block diagram of an embodiment of a RFID tag readersystem;

FIG. 4 depicts a block diagram of an embodiment of a RFID tag readeranalog circuitry;

FIG. 5 depicts a block diagram of an embodiment of a RFID tag readerdigital circuitry;

FIG. 6 depicts a flow chart of an embodiment of a method of atransaction for a slot of an inventory round;

FIG. 7 depicts a flow chart of an embodiment of a method of classifyingthe outcome of a slot of an inventory round;

FIG. 8 depicts an embodiment of a method for determining a time periodto check for phase reversals; and

FIG. 9 depicts a flow chart of an embodiment of a method of generating aQ value for use in an inventory round.

DETAILED DESCRIPTION

Used throughout the specification are terms that are understood by oneof ordinary skill in the art to correspond to the definitions taken fromEPC Global Radio Frequency Identity Protocols Class-1 Generation-2 UHFRFID Protocol for communication at 860 MHz to 960 MHz Version 1.0.9.Examples of terms include, but are not limited to: RFID, Gen2, UHF, Q,RN16, EPC, CRC, Slot, T1, SNR, LF, Pilot Tone, PC Bits, Empty,Collision, Singly Occupied, Interrogator, ACK, Inventory Round, andFalse Positives.

With reference to FIG. 3, one embodiment of an RFID tag reader system300 includes one or more antenna elements 304 in communication withprocessing circuitry 308. The antenna elements can be any type of anantenna element. For example, the antenna elements 304 can be, but arenot limited to, patch antennas, waveguide slot antennas, dipoleantennas, and the like. Each antenna element of the RFID tag readersystem 300 can be the same type of elements. Alternatively, the RFID tagreader system 300 incorporates two or more different types of antennaelements 304. In some embodiments, one or more of the antenna elements304 includes a plurality of antenna elements (i.e., an array of antennaelements). In some embodiments, the antenna elements 304 aremultiplexed.

As shown in FIG. 3 in some installations, an additional RFID tag readersystem 300′ is mounted near a first RFID tag reader system 300. One ormore of the antenna elements 304 receives the response signals from RFIDtags 312 that are placed on items of a pallet 314 in response to theQUERY command issued from the tag reader system 300. These responsesignals can also include a noise component that is the result of the RFenvironment in which the RFID tag reader system 300 operates. The secondtag reader system 300′ also can transmit a QUERY signal, which can bereceived by a receiving antenna element 304 a. In some cases, thesignals transmitted from an antenna element 304 b′ of the second tagreader system 300′, which is located at an adjacent position to thefirst tag reader system 300 (e.g., an adjacent warehouse loading dockdoor), are coupled into the receiving antenna 304 a of the reader undertest 300.

Although shown as receiving noise from another RFID tag reader system300′, it should be understood that the noise and interference can takeother forms. For example, fluorescent lights can generate RF noise andinterference, as when an incident reader signal is backscattered fromthe periodically ionized gases in the fluorescent light. Also, the noiseand interference can results from the backscattering noise produced bytime varying reflection present in the environment. Also, other wirelessitems operating in the environment of the RFID tag reader system 300 cangenerate noise, such as legacy wireless LAN equipment, cordlesstelephones, previous RFID readers, or other industrial, scientific, ormedical (ISM) devices.

As shown in FIG. 3, one embodiment of the RFID tag reader system 300includes an optional sense antenna 316. The sense antenna 316 samplesthe local RF environment, primarily for the purpose of sampling thetransmitted signals sent by “jammers” preferentially to tag responsesignals. In some embodiments, the sense antenna may perform thispreferential reception by means of an antenna radiation pattern thatfavors reception of the noise source(s) over reception of tag responses.This sampled energy is transferred to a “sense receiver” that is part ofthe processing circuitry 308 of the RFID tag reader 300. In someembodiments, the processing circuitry 308 uses the sampled noiseinformation extracted from the signals received by the sense antenna 316to effectively subtract the sampled noise from the signals received bythe receiving antenna 304 a of the RFID tag reader 300.

In one embodiment, the optional sense antenna 316 is a separate antennaelement that is in communication with RFID tag reader system 300. Thesense antenna 316 can be collocated within the RFID tag reader system300. The sense antenna 316 is configured to sample the local RFenvironment and preferentially receive signals from jammers at a highersignal level than tag response signals. The received signals can includenoise and interference signals from the second RFID tag reader system300′ and other interference sources.

The sense antenna 316 can take various forms. For example, the senseantenna 316 may be an omnidirectional monopole antenna. In such anembodiment, the sense antenna 316 is separate from the other antennaelements 304 of the RFID tag reader system 300. In other embodiments,the sense antenna 316 can be, but is not limited to, patch antennas,waveguide slot antennas, dipole antennas, and the like. In essence, anytype of antenna can be used as the sense antenna 316. In certainembodiments, the sense antenna element 316 need not be collocated withthe reader under test. Said another way, the use of spatial diversity(e.g., antenna position) or polarization diversity can be employed topreferentially couple more noise and interference into the sense antenna316 than tag response signal. In other embodiments, the sense antenna'sradiation pattern can be configured to favor reception of noise andinterference preferentially over tag responses. In addition, beamsteering techniques, in the case where the sense antenna 316 is an arrayor a mechanically steered antenna, can be used to preferentially receivethe noise and interference signal from the second RFID tag reader system300′.

In another embodiment, the sense antenna 316 is one of the antennaelements 304 of the RFID tag reader system 300 that is not in use forthe tag response signal reception task. The processing circuitry 308 caninclude circuitry and/or software that provides the ability to switchamong the antenna elements 304 which antenna element 304 is dedicated toreceiving (i.e., the sense antenna 316) the noise signals from thesecond RFID tag reader system 300′. Said another way, in one embodimentthe sense antenna 316 can be switchably connected to either dedicatednoise reception circuitry or tag response reception circuitry. This cantake the form of an antenna element 304 that is not selected by thereader's processing circuitry 308 but is instead selected for connectionto the noise cancellation circuitry.

In operation, in order to read the RFID tags 312, a QUERY command istransmitted from the reader system 300 toward the pallet of items havingthe RFID tags 312. Each RFID tag 312 in the population then picks arandom number between 0 and 2^(Q)−1. This number represents the slot 100of the round in which each of the RFID tag 312 responds to the tagreader 300. The reader system 300 receives the responses andcommunicates them to the processing circuitry 308. The processingcircuitry 308 of the RFID tag reader 300 processes the received signalsto classify each slot 100 of the inventory round. Also, the processingcircuitry can determine the Q value to use for the next inventory round.

With reference to FIG. 4, one embodiment of the analog portion 400 ofthe processing circuitry 308 includes main reader (also referred to asmain receiver through the specification) circuitry 402 and optionalsense receiver circuitry 404. As shown in FIG. 4, the main readercircuitry 402 includes various components such as an in-phasedemodulator, a quadrature demodulator, one or more filters, and one ormore amplifiers. One or more of the various components of the mainreader circuitry 402 may communicate with the sense reader circuitry404.

In one embodiment, the sense receiver circuitry 404 includes at leastsome duplicate components of the main reader circuitry 402. For example,the sense receiver circuitry 404 includes duplicates of the in-phasedemodulator, the quadrature demodulator, the one or more filters, andthe one or more amplifiers. In a specific embodiment, the sense receivercircuitry 404 is an additional quadrature demodulator that is a replicaof the main reader circuitry 402.

In one embodiment, the sense receiver circuitry 404 is driven from thesame local oscillator as the main receiver circuitry 400. As such, thesense receiver circuitry 404 is tuned to the same frequency as the mainreader circuitry 402. In another embodiment, the sense receivercircuitry 404 is driven from a separate local oscillator (not shown).

In operation, the optional sense antenna 316 and the sense receivercircuitry 404 cooperate to sample the local RF environment in which theRFID tag reader system 300 operates. The main reader circuitry 402generates one or more received analog response signals 408 (e.g.,in-phase and quadrature signals). These signals are also referred to asresponse signals 408 throughout the specification. Portions of theresponse signals can be used to classify each slot 100 of the inventoryround. In addition, the sense receiver circuitry 404 optionallygenerates one or more received analog interference signals 412 (e.g.,in-phase and quadrature signals). These signals are also referred to asnoise and interference signals.

Further, the sense receiver circuitry 404 cooperates with a digitalcircuit 500 described below in connection with FIG. 5 to convert adesired bandwidth, which preferably includes the bandwidth of the tagresponses, to a digitized baseband signal for further processing. Forexample, the digitized main reader circuitry signal to categorize eachslot 100 of the inventory and, in some embodiments, generate a Q valuefor the next inventory round.

With reference to FIG. 5, one embodiment of the digital portion 500 ofthe processing circuitry 308 is shown and described. The digital portion500 includes a main digital receiver section 502 and an optional sensedigital receiver section 504. In one embodiment, the main digitalreceiver section 502 includes an analog to digital converter 508 (RXADC) in communication with to the main reader circuitry 402 of FIG. 4that receives the analog response signals 408 from the main readercircuitry 402. The RX ADC 508 also communicates with afirst-in-first-out (RX FIFO) memory 512. Although shown as having asingle ADC 508, other embodiments can include additional RX ADCs 508 canbe used. For example, each of the in-phase signal and quadrature signalscan be fed into a respective ADC 508. Also, additional FIFO memories 512can be used to store each of the respective digitized signals.

The sense digital receiver section 504 includes an analog to digitalconverter 516 (RX ADC) that communicates with the main reader circuitry404 of FIG. 4 to receive the analog noise and interference signals 412from the main reader circuitry 404. The RX ADC 516 communicates with afirst-in-first-out (FIFO) memory 520. In other embodiments, the RX ADC516 communicates with an FPGA (not shown). Although shown as having asingle RX ADC 508, it should be understood that additional RX ADCs 508can be used. For example, each of the in-phase signal and quadraturesignals can be fed into a respective RX ADC 508. Also, additional FIFOmemories 320 can be used to store each of the respective digitizedsignals.

In operation in the responses to the QUERY command, the reader antennasignals 408 are received and digitized, the digitized signals arecommunicated to processing unit 524 (e.g., a digital signal processor(DSP)). In some embodiments, the processing unit 524 periodicallyaccesses the FIFO memories, retrieves the digitized signals, andprocesses the digital signals. The processing unit 524 performsadditional processing on the digitized response signal to classify eachslot 100 of the inventory round accordingly.

In one embodiment, the processing unit 524 is a DSP. In anotherembodiment, the processing unit 524 is a field programmable gate array(FPGA). In another embodiment, one or more application specificintegrated circuits (ASIC) are used. Also, various microprocessors canbe used in some embodiments. In other embodiments, multiple DSPs areused along or in combination with various numbers of FPGAs. Similarly,multiple FPGAs can be used. In one specific embodiment, the processingunit 524 is a BLACKFIN DSP processor manufactured by Analog Devices,Inc. of Norwood, Mass. In another embodiment, the processing unit 524 isa TI c5502 processor manufactured by Texas Instruments Inc. of DallasTex.

With reference to FIG. 6, a method 600 of classifying a slot of aninventory round. The method 600 includes transmitting (step 610) amessage to zero or more RFID tags 312, receiving (step 620) a responsefrom at least some of the RFID tags 312, analyzing (step 630) thereceived responses, and classifying (step 640) the slots in response tothe analysis.

Still referring to FIG. 6 and in greater details, in one embodiment theDSP 524 signals the other components of the reader system 300 to issue aquery command. In some embodiments, a query command is issued duringeach slot of the inventory round for a present Q value. In otherembodiments, a single query command is issued from the reader system300.

One or more of the antennas 304 receive (step 620) a response from oneor more of the RFID tags 312. In other embodiments, the sense antenna316 receives the responses. In still other embodiments, variouscombinations of the antenna 304 and the sense antenna 316 receive theresponses.

The received responses are communicated through the analog section 400and digital section 500 of the reader system 300. The analog section 400and digital section 500 prepare the responses from processing by the DSP524. In one embodiment, the DSP 524 analyzes the receive responses todetect whether a phase reversal is present in the received responsesignal pilot tone. Depending on this determination further processingmay or may not be required. For example, if a phase reversal is foundwithin a specified time period of the response signal the slot isclassified (step 640) as an empty slot. If the DSP 524 does not detect aphase reversal, the received response is classified as either collidedor singly occupied depending on further processing and analysisperformed by the DSP 524. In one embodiment, the DSP detects a phasereversal within the modulation coding. In other embodiments, thephysical layer of a baseband signal (e.g., in-phase “I” or quadrature“Q”) is inspected for a phase reversal.

In one embodiment, the DSP 524 or other components of the reader system300 perform pattern matching on the received response signal. In oneembodiment, a collision classification is applied to the slot when thepatterns do not match. If there is pattern match, the DSP 524, in oneembodiment, instructs some of the other components of the reader system300 to issue an acknowledgment (e.g., ACK). As used herein, patternmatching refers to checking for the presence of the constituents of agiven pattern. Pattern matching can be used, in some embodiments, tocheck that an signal has the desired structure, to find relevantstructure, to retrieve the aligning parts, and to substitute thematching part with something else.

The reader system 300 receives a response to the acknowledgment messagesand performs analysis thereon. In one embodiment, the DSP 524 performsanalysis thereon (e.g., detecting phase reversals). In one embodiment,the DSP 524 performs pattern matching on the received response to theacknowledgment message. Pattern matching can include, but is not limitedto, any filtering, linear transformation or hypothesis test. If there isnot a pattern match, the slot is classified (step 640) as collided. Ifthere is a pattern match, the DSP 524 performs further processing andanalysis on the received response signal to the acknowledgment message.

In one embodiment, the further processing and analysis includes decodingat least a portion of the response to the acknowledgment message. Inother embodiments, the further processing and analysis includesdetecting phase reversals. The decoded portion of the response to theacknowledgment message is compared to an expected result. For example, aCRC calculation can be used. If the decoded portion does not match theexpected result, the slot is classified as collided. If the expectedresult matches the decoded portion, the slot is classified as singlyoccupied.

In one embodiment, if a length specified by a decoded response lengthindicator does not match the length of the decoded message the slot isclassified as collided. However, if the decoded response lengthindicator does match the length of the decoded message the slot isclassified as singly occupied.

With reference to FIG. 7, a block diagram of similar construction tothat of FIG. 2 highlights the differences in an embodiment of a methodof classifying slots of an inventory round according to above-describedprinciples when compared to the method shown in FIG. 2. The method 800includes performing (step 710) a query and checking (step 720) for apilot tone. If the pilot is not detected the slot is classified (step730) as empty. However, if the pilot tone is detect, the method 800checks (step 740) for the RN16 start-of-frame pattern. If the RN16start-of-frame pattern is not detected, the slot 100 is classified (step750) as collided. When the RN16 start-of-frame pattern is detected, theinterrogator transmits (step 760) an ACK message. After sending the ACKmessage, the reader checks (step 770) for the EPC start-of-framepattern. If the EPC start-of-frame pattern is not detected, the slot 100is classified (step 780) as collided. When the EPC start-of-framepattern is detected, the EPC length is checked (step 790). If the lengthdoes not match the length specified in the EPC message length indicator,the slot is classified (step 794) as collided. However, if the lengthdoes match the slot is classified (step 798) as singly occupied.

With reference to FIG. 8 and by way of example, having a known range oflink frequencies and a known range of T1 times, it is possible tocalculate the fastest possible time (T_(b)) for the first bit of thestart-of-frame pattern received by the interrogator. Time T_(b), in oneembodiment, is calculated by adding the fastest allowed T1 value to thepilot tone of a known number of cycles at the highest allowed linkfrequency. The slowest allowed T1 time is shown as time T_(a). Thedifference between T_(b) and T_(a) is T_(pt). During this time period(i.e., T_(pt)) for a singly occupied slot only a pilot tone will bepresent, if the principles described above are applied. In the case of acollided slot, multiple pilot tones will be superimposed in this region;however, from the principle of superposition, the resulting waveformwill comprise basis functions of the pilot tone and therefore lack phasereversals.

By way of example and with continued reference to FIG. 8, assumeoperations occur at using a 240 kHz nominal link frequency and a Millercoding response. Based on the EPC Global Gen2 specification, an RFID tag312 backscatters at a link frequency between 206 KhZ and 276 kHz. Forexample in the case of a 240 kHz nominal Link Frequency and a Millercoding response. The tag 312 sends a response with a T1 time of between57 us and 77 us. In this case Time T_(a) is 57 us and Time T_(b) is 115us. For a period of (T_(pt)=T_(b)−T_(a)) in time, link frequency isestimated and tracked using a matched filter output for phase reversals.For this duration, both collided tag responses and singly occupied slotswill contain a pilot tone or multiple pilot tones that are superimposedand the matched filter will not detect any phase reversals. However, ifthere is phase reversal detection it will be considered as empty slot.

Having separated empty slots from collided slots, further separation ofsingly occupied slots from collisions can occur at two additional pointsduring the message transaction. If no phase reversals are detectedwithin the T_(pt) window but the start-of-frame pattern does not matchthe predetermined pattern the DSP can determine that a collisionoccurred. If the start-of-frame pattern does indeed match, theinterrogator sends an ACK command to the tag 312. If the ACK was sentcorrectly a single tag will send a response that can be checked for itsstart-of-frame pattern. If this does not match, the ACK was sentincorrectly indicating a collision occurred.

If the start-of-frame does match the required pattern the decoder beginsto process the EPC. If the decoded EPC message length matches thatdetermined by the PC bits sent along with the EPC a singly occupied slotis reported, otherwise a collision is reported. These features aid inalleviating any problems that may arise from bit errors in a lowsignal-to-noise environment.

Once the slots are classified, the number of each type of slot can beused, alone or in various combinations to generate a new Q value for useby the reader system 300 in the next inventory round. With reference toFIG. 9, an embodiment of a method 900 of determining a Q value for useby an RFID reader system 300 in an inventory round is shown anddescribed. The method 900 includes determining (step 910) at least oneof the number of empty slots, the number of collided slots, and thenumber of singly occupied slots in an inventory round and applying (step920) a function to at least one of the determined number of empty slots,the number of collided slots, and the number of singly occupied slots todetermine a Q value for another inventory round.

In one embodiment, the number of each category of slots, that is empty,collided, and singly occupied, is determined (step 910) using theabove-described techniques. In other embodiments, other methods are usedto determine the number of each type of slot classification.

In one embodiment, the DSP 524 calculates a Q value by applying (step920) a logarithm function to at least one of the number of number ofempty slots, the number of collided slots, and the number of singlyoccupied slots. In a further embodiment, a base-two logarithm functionis applied. In another embodiment, a base-two logarithm function isapplied to the sum of the singly occupied slots and twice the number ofcollided slots. In other embodiments, a different multiple of the numberof collided slots is summed with the number of singly occupied slots. Insome embodiments, a series estimation is used instead of a logarithmfunction.

Experimental Data:

The above-described principles were applied in a number of differentexperimental situations. The performance of these principles wererecorded and reported below.

Experiment 1: In a field with no tags, a dense reader mode (DRM)compliant interference source was applied at five frequencies (fourchannels away to co-channel). At each of these relative frequencies tothe device under test (DUT) frequency the amplitude of the interfererwas varied from +12 dBm (decibel referred to one milliwatt) to −50 dBmin 2 dB steps. At each of these conditions the number of collisions andempty slots seen was measured for one thousand iterations. Theperformance is reported below in Table 1.

TABLE 1 Correctly Report as Empty % False Positive % Maximum 100.00%0.20% Minimum 97.80% 0.00% Average 99.64% 0.03% Standard Deviation 0.38%0.05%

Experiment 2: With a DRM compliant interference source placed at 915.25MHz the DUT frequency was swept across fifty frequencies from 902.75 MHzto 927.25 MHz in 500 kHz steps. The amplitude of the interferer wasvaried from +12 dBm to −50 dBm in 2 dB steps. At each of theseconditions the number of collisions and empty slots seen was measuredfor one hundred iterations. The performance is reported below in Table2.

TABLE 2 Correctly Report as Empty % False Positive % Maximum 99.82%0.08% Minimum 97.48% 0.00% Average 99.19% 0.02% Standard Deviation 0.68%0.03%

Experiment 3: With the transmit port connected through a variableattenuator directly into the receive port of the reader, the attenuationof the variable attenuator was stepped from 4 dB to 60 dB in 2 dB steps.At each of these conditions the number of collisions and empty slotsseen was measured for one thousand iterations. The performance isreported below in Table 3.

TABLE 3 Correctly Report as Empty % False Positive % Maximum 100.00%0.14% Minimum 98.24% 0.00% Average 99.49% 0.04% Standard Deviation 0.44%0.04%

Note: It is desirable to keep the false positive number to as few aspossible. False positives indicate cases where the noise passed both thepilot tone test and the SOF detection. An ACK statement is unnecessarilysent in these cases costing time.

Experiment 4: Collisions were forced in populations of tags ranging fromtwo tags to twenty tags. At each of these conditions the number ofcollisions and empty slots seen was measured for one thousanditerations. The performance is reported below in Table 4.

TABLE 4 Incorrectly Reported as Empty % Maximum 0.00% Minimum 0.00%Average 0.00% Standard Deviation 0.00%

Experiment 5: A population of two hundred tags were placed in a field.The position of these tags relative to the interrogator antenna waschanged in ten steps. At each of these conditions the number ofcollisions and empty slots seen was measured for one thousanditerations. The performance is reported below in Table 5.

TABLE 5 Incorrectly Reported as Empty % Maximum 0.00% Minimum 0.00%Average 0.00% Standard Deviation 0.00%

Experiment 6: Two tags were placed in a field. The position of the tagswas such that the amplitudes of the tag responses would be almostidentical minimizing the number of possible successful decodes. With aDRM compliant interference source placed at 915.25 MHz the DUT frequencywas swept across fifty frequencies from 902.75 MHz to 927.25 MHz in 500kHz steps. The amplitude of the interferer was varied from +12 dBm to−50 dBm in 2 dB steps. At each of these conditions the number ofcollisions and empty slots seen was measured for one hundred iterations.The performance is reported below in Table 6.

TABLE 6 Incorrectly Reported as Empty % Maximum 0.00% Minimum 0.00%Average 0.00% Standard Deviation 0.00%

While the invention has been disclosed in connection with the preferredembodiments shown and described in detail, various modifications andimprovements thereon will become readily apparent to those skilled inthe art. For example, although the above has been described with respectto the UHF RFID Gen2 protocol, the teaching herein can be applied to anyRFID protocols that utilize a pilot tone (any continuous wave square orsinusoidal with a single basis function) of known duration (or number ofcycles) as part of the message preamble and have tag response timing andlink frequency limits.

Accordingly, the spirit and scope of the present invention is to belimited only by the following claims.

1. A method of classifying a slot of an inventory round, each slotcorresponding to a time period for response by one or more of RFID tags,the method comprising: (a) transmitting, to one or more RFID tags, amessage during a slot of an inventory round; (b) receiving a responsefrom at least some of the one or more RFID tags, the response comprisinga pilot tone; (c) analyzing the received responses for the presence ofthe pilot tone, the analysis comprising detecting a phase reversalwithin a modulation coding in the received response; and (d) classifyinga respective slot as empty in response to a detected phase reversalwithin a specified time period.
 2. The method of claim 1 wherein theanalyzing comprises detecting a phase reversal within a basebandphysical layer.
 3. The method of claim 1 further comprising classifyingthe respective slot as either collided or singly occupied in response tonot detecting a phase reversal within a specified time period.
 4. Themethod of claim 3 further comprising processing the received signal whenthe slot is classified as either collided or singly occupied.
 5. Themethod of claim 4 wherein the processing comprises performing patternmatching on the received signal.
 6. The method of claim 5 furthercomprising classifying the respective slot as having a collision whenthe processing indicates that there is not a pattern match.
 7. Themethod of claim 5 further comprising transmitting an acknowledgmentmessage when the processing indicates that there is a pattern match. 8.The method of claim 7 further comprising receiving a response to theacknowledgment message and analyzing the received response to theacknowledgment message.
 9. The method of claim 8 wherein the analyzingthe received response to the acknowledgment messages comprisesperforming pattern matching on the received response to theacknowledgment message.
 10. The method of claim 9 further comprisingclassifying the slot as having a collision when the pattern matchingindicates that there is not a pattern match.
 11. The method of claim 9further comprising further processing the received response to theacknowledgment message when the pattern matching indicates that there isa pattern match.
 12. The method of claim 11 wherein the furtherprocessing comprises decoding at least a portion of the response to theacknowledgment message.
 13. The method of claim 12 further comprisingclassifying the respective slot as having a collision when the decodingindicates that the decoded at least a portion of the response to theacknowledgment message does not match an expected result.
 14. The methodof claim 13 wherein the classifying comprises classifying the respectiveslot as having a collision when the decoding indicates that a lengthspecified by a decoded response length indicator does not match thelength of the decoded message.
 15. The method of claim 12 furthercomprising classifying the respective slot as singly occupied when thedecoding indicates that the decoded at least a portion of the responseto the acknowledgment message matches an expected result.
 16. The methodof claim 15 wherein the classifying comprises classifying the respectiveslot as singly occupied when the decoding indicates that a lengthspecified by a decoded response length indicator matches the length ofthe decoded message.
 17. The method of claim 1 further comprisingclassifying the respective slot as collided in response to (i) notdetecting a phase reversal within a specified time period and (ii)detecting that a start-of-frame pattern of the received signal does notmatch a predetermined pattern.
 18. A system for classifying a slot of aninventory round, each slot corresponding to a time period for responseby one or more of RFID tags, the system comprising: a transmitter thattransmits, to one or more RFID tags, a message during a slot of aninventory round; a receiver that receives a response from at least oneof the one or more RFID tags, the response comprising a pilot tone; anda processing unit in communication with the receiver, the processingunit analyzing the received response for the presence of a pilot tone,the analysis comprising detecting a phase reversal within a modulationcoding, and classifying a respective slot in response to the analysis,wherein the processing unit detects a phase reversal in the receivedresponse and classifies the respective slot as empty in response to adetected phase reversal within a specified time period.
 19. The systemof claim 18 wherein the processing unit comprises a digital signalprocessor.
 20. The system of claim 18 wherein the processing unitcomprises a field programmable gate array.
 21. The system of claim 18wherein the processing unit comprises an application specific integratedcircuit.
 22. The system of claim 18 wherein the processing unitcomprises a microprocessor.
 23. The system of claim 18 wherein theprocessing unit detects a phase reversal within a baseband physicallayer.
 24. The system of claim 18 wherein the processing unit classifiesthe respective slot as either collided or singly occupied in response tonot detecting a phase reversal within a specified time period.
 25. Thesystem of claim 24 wherein the processing unit processes the receivedresponse when the slot is classified as either collided or singlyoccupied.
 26. The system of claim 25 wherein the processing comprisesperforming pattern matching on the received response.
 27. The system ofclaim 26 wherein the processing unit classifies the respective slot ashaving a collision when the processing indicates that there is not apattern match.
 28. The system of claim 26 wherein the processing unit isin communication with the transmitter and the processing unit instructsthe transmission of an acknowledgment message, via the transmitter, whenthe processing indicates that there is a pattern match.
 29. The systemof claim 28 wherein the receiver receives a response to theacknowledgment message and the processing unit analyzes the receivedresponse to the acknowledgment message.
 30. The system of claim 29wherein the processing unit analyzes the received response to theacknowledgment message by performing pattern matching on the receivedresponse to the acknowledgment message.
 31. The system of claim 30wherein the processing unit classifies the slot as having a collisionwhen the pattern matching indicates that there is not a pattern match.32. The system of claim 30 wherein the processing unit further processesthe received response to the acknowledgment message when the patternmatching indicates that there is a pattern match.
 33. The system ofclaim 32 wherein the processing unit decodes at least a portion of theresponse to the acknowledgment message.
 34. The system of claim 33wherein the processing unit classifies the respective slot as having acollision when the decoding indicates that the decoded at least aportion of the response to the acknowledgment message does not match anexpected result.
 35. The system of claim 34 wherein the processing unitclassifies the respective slot as having a collision when the decodingindicates that a length specified by a decoded response length indicatordoes not match the length of the decoded message.
 36. The system ofclaim 33 wherein the processing unit classifies the respective slot assingly occupied when the decoding indicates that the decoded at least aportion of the response to the acknowledgment message matches anexpected result.
 37. The system of claim 36 wherein the processing unitclassifies the respective slot as singly occupied when the decodingindicates that a length specified by a decoded response length indicatormatches the length of the decoded message.
 38. The system of claim 18wherein the processing unit classifies the respective slot as collidedin response to (i) not detecting a phase reversal within a specifiedtime period and (ii) detecting that a start-of-frame pattern of thereceived signal does not match a predetermined pattern.
 39. A system forclassifying a slot of an inventory round, each slot corresponding to atime period for response by one or more of RFID tags, the systemcomprising: means for transmitting, to one or more RFID tags, a messageduring a slot of an inventory round; means for receiving a response fromat least some of the one or more RFID tags, the response comprising apilot tone; means for analyzing the received response for the presenceof the pilot tone, the analysis comprising detecting a phase reversalwithin a modulation coding; and means for classifying a respective slotin response to the analysis; wherein the means for analyzing comprisesmeans for detecting a phase reversal in the received response, and themeans for classifying comprises means for classifying the respectiveslot as empty in response to a detected phase reversal within aspecified time period.
 40. The system of claim 39 wherein the means foranalyzing comprises means for detecting a phase reversal within abaseband physical layer.
 41. The system of claim 39 further comprisingmeans for classifying the respective slot as either collided or singlyoccupied in response to not detecting a phase reversal within aspecified time period.
 42. The system of claim 41 further comprisingmeans for processing the received response when the slot is classifiedas either collided or singly occupied.
 43. The system of claim 42wherein the means for processing comprises means for performing patternmatching on the received response.
 44. The system of claim 43 furthercomprising means for classifying the respective slot as having acollision when the means for processing indicates that there is not apattern match.
 45. The system of claim 43 further comprising means fortransmitting an acknowledgment message when the means for processingindicates that there is a pattern match.
 46. The system of claim 45further comprising means for receiving a response to the acknowledgmentmessage and means for analyzing the received response to theacknowledgment message.
 47. The system of claim 46 wherein the means foranalyzing the received response to the acknowledgment messages comprisesmeans for performing pattern matching on the received response to theacknowledgment message.
 48. The system of claim 47 further comprisingmeans for classifying the slot as having a collision when the patternmatching indicates that there is not a pattern match.
 49. The system ofclaim 47 further comprising means for further processing the receivedresponse to the acknowledgment message when the pattern matchingindicates that there is a pattern match.
 50. The system of claim 49wherein the means for further processing comprises decoding at least aportion of the response to the acknowledgment message.
 51. The system ofclaim 50 further comprising means for classifying the respective slot ashaving a collision when the decoding indicates that the decoded at leasta portion of the response to the acknowledgment message does not matchan expected result.
 52. The system of claim 51 wherein the means forclassifying comprises means for classifying the respective slot ashaving a collision when the decoding indicates that a length specifiedby a decoded response length indicator does not match the length of thedecoded message.
 53. The system of claim 50 further comprising means forclassifying the respective slot as singly occupied when the decodingindicates that the decoded at least a portion of the response to theacknowledgment message matches an expected result.
 54. The system ofclaim 53 wherein the means for classifying comprises means forclassifying the respective slot as singly occupied when the decodingindicates that a length specified by a decoded response length indicatormatches the length of the decoded message.
 55. The system of claim 39further comprising means for classifying the respective slot as collidedin response to (i) not detecting a phase reversal within a specifiedtime period and (ii) detecting that a start-of-frame pattern of thereceived signal does not match a predetermined pattern.